Systems used in the design and development of microprocessor-based products typically include so-called emulators, or emulation subsystems, which emulate the target microprocessor to be used in the product prototype. Emulators permit hardware and software to be developed concurrently for the prototype, and with great flexibility, allowing design changes to be made and debugging to be carried out before the designs are implemented permanently. The emulator comprises an emulator processor and an emulator controller, both components of which are on the system bus and operate in conjunction with the system processor.
It would be desirable for the emulator controller to passively monitor the emulator data bus and extract certain information predictive of emulator processor behavior from an instruction stream on the data bus, and to operate in a predetermined sequence to generate control signals in response to the information extracted. It would further be desirable for such a control device, hereinafter referred to as an emulator control sequencer, to be universal so as to accommodate a number of different emulator processors.